<?
require_once('functions.php');

function GetTheories()
{
	$connect = GetConnection();
	return $connect->query('SELECT * FROM Psi_Theories');
}
function GetTheory($id)
{
	$connect = GetConnection();
	$sql = "SELECT * FROM Psi_Theories WHERE id=$id";
	$results = $connect->query($sql);
	//echo $sql; die();
	$row = $results->fetch_assoc();
	$connect->close();
	return $row;
}
function BlankTheory()
{
	return array('Name'=>null,'Year'=>null,'Description'=>null,'created_at'=>null,'updated_at'=>null,'id'=>null);
}
function SaveTheory($row)
{
	$connect = GetConnection();
	$escape = EscapeRow($row, $connect);
	$sql = 	"UPDATE Psi_Theories "
		.	"Set "
		
		.	"Name='$escape[Name]', "
		.	"Year='$escape[Year]', "
		.	"Description='$escape[Description]' "
		
		.	"WHERE id=$row[id] ";
	$results = $connect->query($sql);
	// echo $sql; die();
	$error = $connect->error;
	$connect->close();
	
	return $error == '' ? TRUE : array('SQL Error' => $error);
}
function CreateTheory($row) {
	$connect = GetConnection();
	$escape = EscapeRow($row, $connect);
	
	$Name			= 	$_POST['Name'];
	$Year 			= 	$_POST['Year'];
	$Description	= 	$_POST['Description'];
	
	$sql = 
		"INSERT INTO Psi_Theories (
			Name, Year, Description, created_at
		) VALUES (
			'$escape[Name]', '$escape[Year]', '$escape[Description]', NOW()
		)";
	
	$result = $connect->query($sql);
	if ($result) {
		// Success!
		header("Location: index.php");
		exit;
	} else {
		// Display error message.
		echo "<p class=\"error\">Subject creation failed.</p>";
		echo "<p class=\"error\">" . mysql_error() . "</p>";
	}

	$error = $connect->error;
	$connect->close();
	
	return $error == '' ? TRUE : array('SQL Error' => $error);
}
function DeleteTheory($id)
{
	$conn = GetConnection();
	$sql = 	"DELETE FROM Psi_Theories WHERE id=$id";
	$results = $conn->query($sql);
	//echo $sql;
	$error = $conn->error;
	$conn->close();
	
	return $error == '' ? true : array('SQL Error' => $error);
}
/*function DeleteTheory($row) {
	$connect = GetConnection();

	if (intval($_GET['id']) == 0) {
			header("Location: index.php");
			die();
	}
	
	$id = mysql_prep($_GET['id']);
	
	if ($subject = GetTheory($id)) {
		
		$sql = "DELETE FROM Psi_Theories WHERE id = {$id} LIMIT 1";
		$result = $connect->query($sql);
		if ( $connect->affected_rows == 1 ) {
			header("Location: index.php");
			die();
		} else {
			// Deletion Failed
			echo "<p class=\"error\">Subject deletion failed.</p>";
			echo "<p class=\"error\">" . mysql_error() . "</p>";
			echo "<a href=\"index.php\">Return to Main Page</a>";
		}
	} else {
		// Theorist didn't exist in database
			header("Location: index.php");
			die();
	}

	$connect->close();
}
*/
function ValidateTheory($row)
{
	$errors = array();
	if(empty($row['Name'])) $errors['Name'] = 'A name is required';
	if(empty($row['Year'])) $errors['Year'] = 'Year is requires';
	if(empty($row['Description'])) $errors['Description'] = 'Description is required';

	return count($errors) == 0 ? true : $errors;
}